//导入
const find_model = require('../../model/find_model');
//导入集合_model
const collect = require('../../model/添加信息集合_model')
//使用collect方法返回的对象
const noteModel = collect.collect();
// 导入express
var express = require('express');
// 模块化
var router = express.Router();
// 导入获取请求体的模板
const request = require('./../../model/获取请求体')

//导入检测登录的路由中间件
const checkLogin = require('./../../middleWare/checkLogin')

/* 添加账本的GET路由表单 */
//首页路径
router.get('/',((req, res) => {
    res.redirect('create');
}));
//添加信息的页面
router.get('/create', checkLogin, function (req, res, next) {
    res.render('create', {title: '添加信息'});
});
//获取get请求的查询页面record    (查看添加记录页面)
router.get('/record', checkLogin, function (req, res, next) {
    //读取数据库中的文档对象
    find_model.find(noteModel, res);
});
//获取post请求的成功添加页面success   (新增记录)
router.post('/success', checkLogin, function (req, res, next) {
    // 向数据库插入请求体的值
    request(req, res, next, fields => {
        if (!fields.matter || !fields.time || !fields.money) {
            res.status(500).render('success', {title: '输入信息为空', url: '/create', result: '请输入完整的表单！'});
            return;
        }
        noteModel.create({
            ...fields
        }, (err, data) => {
            if (err) {
                res.status(500).render('success', {title: '插入失败~', url: null, result: '信息添加失败！'});
                console.log(err);//如果增加报错就输出
                return;
            }
            console.log(data);
            //设置响应体
            res.render('success', {title: '信息添加成功', url: '/record', result: '点击此处查看！'});
        });
    });
});

//删除添加的记录
router.get('/record/:id', checkLogin, (req, res) => {
    // 获取请求的id参数
    let id = req.params.id;
    console.log('id:' + id)
    // 删除
    noteModel.deleteOne({_id: id}, (err, data) => {
        if (err) {
            res.status(500).render('success', {title: '删除失败~', url: null, result: '信息删除失败！'});
            return;
        }
        //读取数据库
        find_model.find(noteModel, res);
    });

})


// 暴漏模块
module.exports = router;